<template>
  <div class="vue-init clearfix">
    <el-scrollbar style="height: 100%">
    <div class="main">
      <pre class="text-left fs14 p15">
1、组件文件 只要有能够拼接文件的构建系统，就把每个组件单独分成文件

2、单文件组件命名 始终是单词大写开头 MyComponent.vue

3、基础组件命名 特定的样式或者基础组件应该以一个特定的前缀开头 BaseButton.vue BaseTable.vue BaseIcon.vue

4、单例组件名 只拥有单个活跃实例的组件以The为前缀命名，以示其唯一性 每个页面只使用一次，不接受任何props

5、组件名中的单词顺序 组件名应该以高级别的 (通常是一般化描述的) 单词开头，以描述性的修饰词结尾。

6、自闭合组件

7、js中组件名大小写 import MyComponent from './MyComponent.vue' 文件名称、import引入名称、路由path、路由名称推荐全保持一致，不使用缩写

8、完整单词的组件名 组件名趋于完整单词而不是缩写

9、props命名大小写 props: { greetingText: String }

10、多个特性元素 多个特性的元素应该分多行撰写，每个特性一行。

11、简单的计算属性 应该把复杂计算属性分割为尽可能多的更简单的属性。

12、指令缩写 用 : 表示 v-bind: 和用 @ 表示 v-on

14、vue实例顺序
components // 组件注册
props // 父组件传值
data // 申明变量
created // 组件实例创建完成，但dom还未生成
mounted // 模版编译、挂载之后
activited // for keep-live 组件被激活时调用
update // 组件更新之后
beforeRouteUpdate // 路由监听（to，from，next）
metods // 构造函数
filter // 过滤
computed // 计算属性
watch // 监听

15、数据定义 多组数据赋值应在data第一层，不推荐使用多组数据放在同一json下。

16、除开使用@input、正则验证等必须使用$event取值外，所有传参不推荐使用event取值（不推荐v-model和@input同时使用）

17、vue数据深copy推荐方式 JSON.parse(JSON.stringify(...))

18、公用组件emit传值应尽可能全面，增强其拓展性。公用组件内不写数据逻辑，只传递数据信息

19、代码尽可能精简，考虑其拓展复用性。推荐数据逻辑在后端接口请求处统一处理，不在多处函数中修改数据结构及处理数据

20、强制要求每个函数使用注释，即使函数中只有一个console.log()
      </pre>
    </div>
    </el-scrollbar>
  </div>
</template>

<script>
export default {
  name: 'VueInit'
}
</script>

<!-- Add "scoped" attribute to limit CSS to this component only -->
<style lang="scss">
.vue-init{
  margin: 0 auto;
  overflow: hidden;
}
</style>
